﻿#region Using Directives
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Web.UI;
using System.Web.UI.Design;

using PAT.Entities;
using PAT.Data;
using PAT.Data.Bases;
using PAT.Services;
#endregion

namespace PAT.Web.Data
{
	/// <summary>
	/// Represents the DataRepository.PatOrdenTrabajoProvider object that provides
	/// data to data-bound controls in multi-tier Web application architectures.
	/// </summary>
	[Designer(typeof(PatOrdenTrabajoDataSourceDesigner))]
	public class PatOrdenTrabajoDataSource : ProviderDataSource<PatOrdenTrabajo, PatOrdenTrabajoKey>
	{
		#region Constructors

		/// <summary>
		/// Initializes a new instance of the PatOrdenTrabajoDataSource class.
		/// </summary>
		public PatOrdenTrabajoDataSource() : base(new PatOrdenTrabajoService())
		{
		}

		#endregion Constructors
		
		#region Properties
		
		/// <summary>
		/// Gets a reference to the PatOrdenTrabajoDataSourceView used by the PatOrdenTrabajoDataSource.
		/// </summary>
		protected PatOrdenTrabajoDataSourceView PatOrdenTrabajoView
		{
			get { return ( View as PatOrdenTrabajoDataSourceView ); }
		}
		
		/// <summary>
		/// Gets or sets the name of the method or function that
		/// the PatOrdenTrabajoDataSource control invokes to retrieve data.
		/// </summary>
		public PatOrdenTrabajoSelectMethod SelectMethod
		{
			get
			{
				PatOrdenTrabajoSelectMethod selectMethod = PatOrdenTrabajoSelectMethod.GetAll;
				Object method = ViewState["SelectMethod"];
				if ( method != null )
				{
					selectMethod = (PatOrdenTrabajoSelectMethod) method;
				}
				return selectMethod;
			}
			set { ViewState["SelectMethod"] = value; }
		}

		#endregion Properties
		
		#region Methods

		/// <summary>
		/// Creates a new instance of the PatOrdenTrabajoDataSourceView class that is to be
		/// used by the PatOrdenTrabajoDataSource.
		/// </summary>
		/// <returns>An instance of the PatOrdenTrabajoDataSourceView class.</returns>
		protected override BaseDataSourceView<PatOrdenTrabajo, PatOrdenTrabajoKey> GetNewDataSourceView()
		{
			return new PatOrdenTrabajoDataSourceView(this, DefaultViewName);
		}
		
		/// <summary>
        /// Creates a cache hashing key based on the startIndex, pageSize and the SelectMethod being used.
        /// </summary>
        /// <param name="startIndex">The current start row index.</param>
        /// <param name="pageSize">The current page size.</param>
        /// <returns>A string that can be used as a key for caching purposes.</returns>
		protected override string CacheHashKey(int startIndex, int pageSize)
        {
			return String.Format("{0}:{1}:{2}", SelectMethod, startIndex, pageSize);
        }
		
		#endregion Methods
	}
	
	/// <summary>
	/// Supports the PatOrdenTrabajoDataSource control and provides an interface for
	/// data-bound controls to perform data operations with business and data objects.
	/// </summary>
	public class PatOrdenTrabajoDataSourceView : ProviderDataSourceView<PatOrdenTrabajo, PatOrdenTrabajoKey>
	{
		#region Declarations

		#endregion Declarations
		
		#region Constructors

		/// <summary>
		/// Initializes a new instance of the PatOrdenTrabajoDataSourceView class.
		/// </summary>
		/// <param name="owner">A reference to the PatOrdenTrabajoDataSource which created this instance.</param>
		/// <param name="viewName">The name of the view.</param>
		public PatOrdenTrabajoDataSourceView(PatOrdenTrabajoDataSource owner, String viewName)
			: base(owner, viewName)
		{
		}
		
		#endregion Constructors
		
		#region Properties

		/// <summary>
		/// Gets a strongly-typed reference to the Owner property.
		/// </summary>
		internal PatOrdenTrabajoDataSource PatOrdenTrabajoOwner
		{
			get { return Owner as PatOrdenTrabajoDataSource; }
		}

		/// <summary>
		/// Gets or sets the name of the method or function that
		/// the DataSource control invokes to retrieve data.
		/// </summary>
		internal PatOrdenTrabajoSelectMethod SelectMethod
		{
			get { return PatOrdenTrabajoOwner.SelectMethod; }
			set { PatOrdenTrabajoOwner.SelectMethod = value; }
		}

		/// <summary>
		/// Gets a strongly typed reference to the Provider property.
		/// </summary>
		internal PatOrdenTrabajoService PatOrdenTrabajoProvider
		{
			get { return Provider as PatOrdenTrabajoService; }
		}

		#endregion Properties
		
		#region Methods
		
		/// <summary>
		/// Gets a collection of Entity objects based on the value of the SelectMethod property.
		/// </summary>
		/// <param name="count">The total number of rows in the DataSource.</param>
		/// <returns>A collection of Entity objects.</returns>
		protected override IList<PatOrdenTrabajo> GetSelectData(out int count)
		{
			Hashtable values = CollectionsUtil.CreateCaseInsensitiveHashtable(GetParameterValues());
			Hashtable customOutput = CollectionsUtil.CreateCaseInsensitiveHashtable();
			IList<PatOrdenTrabajo> results = null;
			PatOrdenTrabajo item;
			count = 0;
			
			System.Int32 _idDocumento;
			System.Int32 _numeroOrden;
			System.Byte _idCargoOrden;
			System.Int32 _idCliente;
			System.Int32 _idRecepcionista;
			System.Byte _idEstadoCita;
			System.Byte _idEstadoLiquidacion;
			System.Byte _idEstadoOrden;
			System.Int32 _idListaPrecios;
			System.Byte _idNivelCombustible;
			System.Int32 _idTaller;
			System.Int16 _idTipoPropietario;
			System.Byte _idTrabajo;
			System.Int32 _idVehiculo;
			System.Int32 _idAccesorio;
			System.Int32 _idKit;
			System.Int32 _idOperacion;
			System.Int16 _idGrupoPeritaje;
			System.Int16 _idItemPeritaje;
			System.Int32 _idDocumentoTransferencia;
			System.Int32 _numeroTransferencia;

			switch ( SelectMethod )
			{
				case PatOrdenTrabajoSelectMethod.Get:
					PatOrdenTrabajoKey entityKey  = new PatOrdenTrabajoKey();
					entityKey.Load(values);
					item = PatOrdenTrabajoProvider.Get(entityKey);
					results = new TList<PatOrdenTrabajo>();
					if ( item != null ) results.Add(item);
					count = results.Count;
					break;
				case PatOrdenTrabajoSelectMethod.GetAll:
                    results = PatOrdenTrabajoProvider.GetAll(StartIndex, PageSize, out count);
                    break;
				case PatOrdenTrabajoSelectMethod.GetPaged:
					results = PatOrdenTrabajoProvider.GetPaged(WhereClause, OrderBy, PageIndex, PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.Find:
					if ( FilterParameters != null )
						results = PatOrdenTrabajoProvider.Find(FilterParameters, OrderBy, StartIndex, PageSize, out count);
					else
						results = PatOrdenTrabajoProvider.Find(WhereClause, StartIndex, PageSize, out count);
                    break;
				// PK
				case PatOrdenTrabajoSelectMethod.GetByIdDocumentoNumeroOrden:
					_idDocumento = ( values["IdDocumento"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdDocumento"], typeof(System.Int32)) : (int)0;
					_numeroOrden = ( values["NumeroOrden"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["NumeroOrden"], typeof(System.Int32)) : (int)0;
					item = PatOrdenTrabajoProvider.GetByIdDocumentoNumeroOrden(_idDocumento, _numeroOrden);
					results = new TList<PatOrdenTrabajo>();
					if ( item != null ) results.Add(item);
					count = results.Count;
					break;
				// IX
				// FK
				case PatOrdenTrabajoSelectMethod.GetByIdCargoOrden:
					_idCargoOrden = ( values["IdCargoOrden"] != null ) ? (System.Byte) EntityUtil.ChangeType(values["IdCargoOrden"], typeof(System.Byte)) : (byte)0;
					results = PatOrdenTrabajoProvider.GetByIdCargoOrden(_idCargoOrden, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdCliente:
					_idCliente = ( values["IdCliente"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdCliente"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdCliente(_idCliente, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdDocumento:
					_idDocumento = ( values["IdDocumento"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdDocumento"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdDocumento(_idDocumento, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdRecepcionista:
					_idRecepcionista = ( values["IdRecepcionista"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdRecepcionista"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdRecepcionista(_idRecepcionista, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdEstadoCita:
					_idEstadoCita = ( values["IdEstadoCita"] != null ) ? (System.Byte) EntityUtil.ChangeType(values["IdEstadoCita"], typeof(System.Byte)) : (byte)0;
					results = PatOrdenTrabajoProvider.GetByIdEstadoCita(_idEstadoCita, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdEstadoLiquidacion:
					_idEstadoLiquidacion = ( values["IdEstadoLiquidacion"] != null ) ? (System.Byte) EntityUtil.ChangeType(values["IdEstadoLiquidacion"], typeof(System.Byte)) : (byte)0;
					results = PatOrdenTrabajoProvider.GetByIdEstadoLiquidacion(_idEstadoLiquidacion, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdEstadoOrden:
					_idEstadoOrden = ( values["IdEstadoOrden"] != null ) ? (System.Byte) EntityUtil.ChangeType(values["IdEstadoOrden"], typeof(System.Byte)) : (byte)0;
					results = PatOrdenTrabajoProvider.GetByIdEstadoOrden(_idEstadoOrden, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdListaPrecios:
					_idListaPrecios = ( values["IdListaPrecios"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdListaPrecios"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdListaPrecios(_idListaPrecios, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdNivelCombustible:
					_idNivelCombustible = ( values["IdNivelCombustible"] != null ) ? (System.Byte) EntityUtil.ChangeType(values["IdNivelCombustible"], typeof(System.Byte)) : (byte)0;
					results = PatOrdenTrabajoProvider.GetByIdNivelCombustible(_idNivelCombustible, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdTaller:
					_idTaller = ( values["IdTaller"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdTaller"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdTaller(_idTaller, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdTipoPropietario:
					_idTipoPropietario = ( values["IdTipoPropietario"] != null ) ? (System.Int16) EntityUtil.ChangeType(values["IdTipoPropietario"], typeof(System.Int16)) : (short)0;
					results = PatOrdenTrabajoProvider.GetByIdTipoPropietario(_idTipoPropietario, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdTrabajo:
					_idTrabajo = ( values["IdTrabajo"] != null ) ? (System.Byte) EntityUtil.ChangeType(values["IdTrabajo"], typeof(System.Byte)) : (byte)0;
					results = PatOrdenTrabajoProvider.GetByIdTrabajo(_idTrabajo, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdVehiculo:
					_idVehiculo = ( values["IdVehiculo"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdVehiculo"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdVehiculo(_idVehiculo, this.StartIndex, this.PageSize, out count);
					break;
				// M:M
				case PatOrdenTrabajoSelectMethod.GetByIdAccesorioFromPatOrdenTrabajoAccesorio:
					_idAccesorio = ( values["IdAccesorio"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdAccesorio"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdAccesorioFromPatOrdenTrabajoAccesorio(_idAccesorio, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdKitFromPatOrdenTrabajoKit:
					_idKit = ( values["IdKit"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdKit"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdKitFromPatOrdenTrabajoKit(_idKit, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdOperacionFromPatOrdenTrabajoOperacion:
					_idOperacion = ( values["IdOperacion"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdOperacion"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdOperacionFromPatOrdenTrabajoOperacion(_idOperacion, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdGrupoPeritajeIdItemPeritajeFromPatOrdenTrabajoPeritaje:
					_idGrupoPeritaje = ( values["IdGrupoPeritaje"] != null ) ? (System.Int16) EntityUtil.ChangeType(values["IdGrupoPeritaje"], typeof(System.Int16)) : (short)0;
					_idItemPeritaje = ( values["IdItemPeritaje"] != null ) ? (System.Int16) EntityUtil.ChangeType(values["IdItemPeritaje"], typeof(System.Int16)) : (short)0;
					results = PatOrdenTrabajoProvider.GetByIdGrupoPeritajeIdItemPeritajeFromPatOrdenTrabajoPeritaje(_idGrupoPeritaje, _idItemPeritaje, this.StartIndex, this.PageSize, out count);
					break;
				case PatOrdenTrabajoSelectMethod.GetByIdDocumentoTransferenciaNumeroTransferenciaFromPatOrdenTrabajoTransferencia:
					_idDocumentoTransferencia = ( values["IdDocumentoTransferencia"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["IdDocumentoTransferencia"], typeof(System.Int32)) : (int)0;
					_numeroTransferencia = ( values["NumeroTransferencia"] != null ) ? (System.Int32) EntityUtil.ChangeType(values["NumeroTransferencia"], typeof(System.Int32)) : (int)0;
					results = PatOrdenTrabajoProvider.GetByIdDocumentoTransferenciaNumeroTransferenciaFromPatOrdenTrabajoTransferencia(_idDocumentoTransferencia, _numeroTransferencia, this.StartIndex, this.PageSize, out count);
					break;
				// Custom
				default:
					break;
			}

			if ( results != null && count < 1 )
			{
				count = results.Count;

				if ( !String.IsNullOrEmpty(CustomMethodRecordCountParamName) )
				{
					object objCustomCount = EntityUtil.ChangeType(customOutput[CustomMethodRecordCountParamName], typeof(Int32));
					
					if ( objCustomCount != null )
					{
						count = (int) objCustomCount;
					}
				}
			}
			
			return results;
		}
		
		/// <summary>
		/// Gets the values of any supplied parameters for internal caching.
		/// </summary>
		/// <param name="values">An IDictionary object of name/value pairs.</param>
		protected override void GetSelectParameters(IDictionary values)
		{
			if ( SelectMethod == PatOrdenTrabajoSelectMethod.Get || SelectMethod == PatOrdenTrabajoSelectMethod.GetByIdDocumentoNumeroOrden )
			{
				EntityId = GetEntityKey(values);
			}
		}

		/// <summary>
		/// Performs a DeepLoad operation for the current entity if it has
		/// not already been performed.
		/// </summary>
		internal override void DeepLoad()
		{
			if ( !IsDeepLoaded )
			{
				PatOrdenTrabajo entity = GetCurrentEntity();
				
				if ( entity != null )
				{
					// init transaction manager
					GetTransactionManager();
					// execute deep load method
					PatOrdenTrabajoProvider.DeepLoad(GetCurrentEntity(), EnableRecursiveDeepLoad);
					// set loaded flag
					IsDeepLoaded = true;
				}
			}
		}

		/// <summary>
		/// Performs a DeepLoad operation on the specified entity collection.
		/// </summary>
		/// <param name="entityList"></param>
		/// <param name="properties"></param>
		internal override void DeepLoad(TList<PatOrdenTrabajo> entityList, ProviderDataSourceDeepLoadList properties)
		{
			// init transaction manager
			GetTransactionManager();
			// execute deep load method
			PatOrdenTrabajoProvider.DeepLoad(entityList, properties.Recursive, properties.Method, properties.GetTypes());
		}

		#endregion Select Methods
	}
	
	#region PatOrdenTrabajoDataSourceDesigner

	/// <summary>
	/// Provides design-time support in a design host for the PatOrdenTrabajoDataSource class.
	/// </summary>
	public class PatOrdenTrabajoDataSourceDesigner : ProviderDataSourceDesigner<PatOrdenTrabajo, PatOrdenTrabajoKey>
	{
		/// <summary>
		/// Initializes a new instance of the PatOrdenTrabajoDataSourceDesigner class.
		/// </summary>
		public PatOrdenTrabajoDataSourceDesigner()
		{
		}

		/// <summary>
		/// Gets or sets the SelectMethod property.
		/// </summary>
		public PatOrdenTrabajoSelectMethod SelectMethod
		{
			get { return ((PatOrdenTrabajoDataSource) DataSource).SelectMethod; }
			set { SetPropertyValue("SelectMethod", value); }
		}

		/// <summary>Gets the designer action list collection for this designer.</summary>
		/// <returns>The <see cref="T:System.ComponentModel.Design.DesignerActionListCollection"/>
		/// associated with this designer.</returns>
		public override DesignerActionListCollection ActionLists
		{
			get
			{
				DesignerActionListCollection actions = new DesignerActionListCollection();
				actions.Add(new PatOrdenTrabajoDataSourceActionList(this));
				actions.AddRange(base.ActionLists);
				return actions;
			}
		}
	}

	#region PatOrdenTrabajoDataSourceActionList

	/// <summary>
	/// Supports the PatOrdenTrabajoDataSourceDesigner class.
	/// </summary>
	internal class PatOrdenTrabajoDataSourceActionList : DesignerActionList
	{
		private PatOrdenTrabajoDataSourceDesigner _designer;

		/// <summary>
		/// Initializes a new instance of the PatOrdenTrabajoDataSourceActionList class.
		/// </summary>
		/// <param name="designer"></param>
		public PatOrdenTrabajoDataSourceActionList(PatOrdenTrabajoDataSourceDesigner designer) : base(designer.Component)
		{
			_designer = designer;
		}

		/// <summary>
		/// Gets or sets the SelectMethod property.
		/// </summary>
		public PatOrdenTrabajoSelectMethod SelectMethod
		{
			get { return _designer.SelectMethod; }
			set { _designer.SelectMethod = value; }
		}

		/// <summary>
		/// Returns the collection of <see cref="T:System.ComponentModel.Design.DesignerActionItem"/>
		/// objects contained in the list.
		/// </summary>
		/// <returns>A <see cref="T:System.ComponentModel.Design.DesignerActionItem"/>
		/// array that contains the items in this list.</returns>
		public override DesignerActionItemCollection GetSortedActionItems()
		{
			DesignerActionItemCollection items = new DesignerActionItemCollection();
			items.Add(new DesignerActionPropertyItem("SelectMethod", "Select Method", "Methods"));
			return items;
		}
	}

	#endregion PatOrdenTrabajoDataSourceActionList
	
	#endregion PatOrdenTrabajoDataSourceDesigner
	
	#region PatOrdenTrabajoSelectMethod
	
	/// <summary>
	/// Enumeration of method names available for the PatOrdenTrabajoDataSource.SelectMethod property.
	/// </summary>
	public enum PatOrdenTrabajoSelectMethod
	{
		/// <summary>
		/// Represents the Get method.
		/// </summary>
		Get,
		/// <summary>
		/// Represents the GetAll method.
		/// </summary>
		GetAll,
		/// <summary>
		/// Represents the GetPaged method.
		/// </summary>
		GetPaged,
		/// <summary>
		/// Represents the Find method.
		/// </summary>
		Find,
		/// <summary>
		/// Represents the GetByIdDocumentoNumeroOrden method.
		/// </summary>
		GetByIdDocumentoNumeroOrden,
		/// <summary>
		/// Represents the GetByIdCargoOrden method.
		/// </summary>
		GetByIdCargoOrden,
		/// <summary>
		/// Represents the GetByIdCliente method.
		/// </summary>
		GetByIdCliente,
		/// <summary>
		/// Represents the GetByIdDocumento method.
		/// </summary>
		GetByIdDocumento,
		/// <summary>
		/// Represents the GetByIdRecepcionista method.
		/// </summary>
		GetByIdRecepcionista,
		/// <summary>
		/// Represents the GetByIdEstadoCita method.
		/// </summary>
		GetByIdEstadoCita,
		/// <summary>
		/// Represents the GetByIdEstadoLiquidacion method.
		/// </summary>
		GetByIdEstadoLiquidacion,
		/// <summary>
		/// Represents the GetByIdEstadoOrden method.
		/// </summary>
		GetByIdEstadoOrden,
		/// <summary>
		/// Represents the GetByIdListaPrecios method.
		/// </summary>
		GetByIdListaPrecios,
		/// <summary>
		/// Represents the GetByIdNivelCombustible method.
		/// </summary>
		GetByIdNivelCombustible,
		/// <summary>
		/// Represents the GetByIdTaller method.
		/// </summary>
		GetByIdTaller,
		/// <summary>
		/// Represents the GetByIdTipoPropietario method.
		/// </summary>
		GetByIdTipoPropietario,
		/// <summary>
		/// Represents the GetByIdTrabajo method.
		/// </summary>
		GetByIdTrabajo,
		/// <summary>
		/// Represents the GetByIdVehiculo method.
		/// </summary>
		GetByIdVehiculo,
		/// <summary>
		/// Represents the GetByIdAccesorioFromPatOrdenTrabajoAccesorio method.
		/// </summary>
		GetByIdAccesorioFromPatOrdenTrabajoAccesorio,
		/// <summary>
		/// Represents the GetByIdKitFromPatOrdenTrabajoKit method.
		/// </summary>
		GetByIdKitFromPatOrdenTrabajoKit,
		/// <summary>
		/// Represents the GetByIdOperacionFromPatOrdenTrabajoOperacion method.
		/// </summary>
		GetByIdOperacionFromPatOrdenTrabajoOperacion,
		/// <summary>
		/// Represents the GetByIdGrupoPeritajeIdItemPeritajeFromPatOrdenTrabajoPeritaje method.
		/// </summary>
		GetByIdGrupoPeritajeIdItemPeritajeFromPatOrdenTrabajoPeritaje,
		/// <summary>
		/// Represents the GetByIdDocumentoTransferenciaNumeroTransferenciaFromPatOrdenTrabajoTransferencia method.
		/// </summary>
		GetByIdDocumentoTransferenciaNumeroTransferenciaFromPatOrdenTrabajoTransferencia
	}
	
	#endregion PatOrdenTrabajoSelectMethod

	#region PatOrdenTrabajoFilter
	
	/// <summary>
	/// A strongly-typed instance of the <see cref="SqlFilter&lt;EntityColumn&gt;"/> class
	/// that is used exclusively with a <see cref="PatOrdenTrabajo"/> object.
	/// </summary>
	[CLSCompliant(true)]
	public class PatOrdenTrabajoFilter : SqlFilter<PatOrdenTrabajoColumn>
	{
	}
	
	#endregion PatOrdenTrabajoFilter

	#region PatOrdenTrabajoExpressionBuilder
	
	/// <summary>
	/// A strongly-typed instance of the <see cref="SqlExpressionBuilder&lt;EntityColumn&gt;"/> class
	/// that is used exclusively with a <see cref="PatOrdenTrabajo"/> object.
	/// </summary>
	[CLSCompliant(true)]
	public class PatOrdenTrabajoExpressionBuilder : SqlExpressionBuilder<PatOrdenTrabajoColumn>
	{
	}
	
	#endregion PatOrdenTrabajoExpressionBuilder	

	#region PatOrdenTrabajoProperty
	
	/// <summary>
	/// A strongly-typed instance of the <see cref="ChildEntityProperty&lt;PatOrdenTrabajoChildEntityTypes&gt;"/> class
	/// that is used exclusively with a <see cref="PatOrdenTrabajo"/> object.
	/// </summary>
	[CLSCompliant(true)]
	public class PatOrdenTrabajoProperty : ChildEntityProperty<PatOrdenTrabajoChildEntityTypes>
	{
	}
	
	#endregion PatOrdenTrabajoProperty
}

